package com.tellus.util;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

import org.hibernate.impl.CriteriaImpl;

public interface GenericTellixDao<E, PK extends Serializable> {
	
	 public E save(E entity);
	    public E findById(PK id);
	    public E update(E entity);
	    public void delete(E entity);
	    public List<E> getList(CriteriaImpl criteriaImpl);
	    public List<E> obtenerActualizadosHoy();
	    public List<E> obtenerCreadosHoy();
	    public List<E> obtenerActivos();
	    public List<E> obtenerActivosOrdenado(String order);
	    
	    public E obtenerPorCodigo(String codigo);
	    public List<E> obtenerPorFiltro(Date fechaInicial, Date fechaFinal, Boolean estado);

}
